package com.jingtao.product.service;

import com.jingtao.product.domain.DTO.ProductAttrInfo;
import com.jingtao.product.domain.DTO.ProductAttributeParam;
import com.jingtao.product.domain.ProductAttribute;
import com.jingtao.product.domain.ProductAttributeCategory;
import com.jingtao.product.domain.request.ProductAttrRequest;
import org.springframework.transaction.annotation.Transactional;

import java.util.List;

/**
 * @ClassName:
 * @Description:
 * @Author: zengfanzhen
 * @Date: 2024/4/1 20:08:15
 */
public interface ProductAttributeService {


//    /**
//     * 根据分类分页获取商品属性
//     * @param cid 分类id
//     * @param type 0->属性；2->参数
//     */
//    List<ProductAttribute> getList(Long cid, Integer type, Integer pageSize, Integer pageNum);

    /**
     * 添加商品属性
     */
    @Transactional
    int create(ProductAttributeParam pmsProductAttributeParam);

    /**
     * 修改商品属性
     */
    int update(Long id, ProductAttributeParam productAttributeParam);

    /**
     * 获取单个商品属性信息
     */
    ProductAttribute getItem(Long id);

    @Transactional
    int delete(List<Long> ids);

    List<ProductAttrInfo> getProductAttrInfo(Long productCategoryId);

    /**
     * 查询所有商品属性分类
     * @return
     */
    List<ProductAttributeCategory> getAllProductAttrCategory(ProductAttrRequest productAttrRequest);

    List<ProductAttribute> getList(Long cid, Integer type, Integer pageSize, Integer pageNum);


    List<ProductAttributeCategory> getCateList(Integer pageSize, Integer pageNum);

}
